export default {
  namespaced: true,
  state: {
    token: ""
  },
  getters: {

  },
  mutations: {
    setToken(state, payload) {
      state.token = payload.token

    }
  },
  actions: {
    async getToken({ commit }) {
      // 1  获取用户信息
      const [err, { encryptedData, rawData, iv, signature }] =
        await uni.getUserProfile({
          desc: "声明获取用户个人信息后的用途",
        });
      // console.log(encryptedData, rawData, iv, signature);
      // 2  获取 code 临时凭据
      const [err2, { code }] = await uni.login();
      // console.log(code);
      // 3 获取token  后端没有写好代码！！ 正常是每一次获取都是ok！！！
      // 以点击两次 为准
      const { token } = await uni.$u.post("/users/wxlogin", {
        encryptedData,
        rawData,
        iv,
        signature,
        code,
      });
      //设置token
      commit("setToken", { token })
    }
  }
}